class Solution {
public:
    int jump(vector<int>& nums) {
        int left=0,right=0,maxPos=0,ret=0,n=nums.size();
        while(left<=right)
        {
            if(maxPos>=n-1)return ret;
            for(int i=left;i<=right;i++)
            {
                maxPos=max(maxPos,nums[i]+i);
            }
            left=right+1;
            right=maxPos;
            ret++;
        }
        return -1;
    }
};
